<?php
class C_InvoiceVat extends Controller {
    private $logger;

    function __construct($template_mod = "general") {
        parent::Controller();
        $this->template_mod = $template_mod;
        $this->logger = LoggerManager::getLogger('module.billing.controllers.C_InvoiceVat');
        $this->view->path   =   "invoice_vat";
    }
    
    public function actionPrintInvoiceVat(){
        $this->assign('customerCode', $_GET['customerCode']);
        $this->assign('customerName', $_GET['customerName']);
        $this->assign('customerAddress', $_GET['customerAddress']);
        $_GET['taxCode'] = '1234567890';
        $this->assign('taxCode', $_GET['taxCode']);
        
        $this->assign('department', $this->_me->get_department_name());
        
        $amount = strval($_GET['amount']) . ' VNĐ';
        $this->assign('amount', $amount);
        
        $amount = L10nHelper::getNumber($_GET['amount']);
        $this->assign('amountInText', $this->toVNDText($amount));
        $this->assign('reasonCollecting', $_GET['reasonCollecting']);
        
        $today = explode('-', date('y-m-d'));
        $this->assign('today', array(
                'yy'    =>  $today[0],
                'mm'    =>  $today[1],
                'dd'    =>  $today[2])
        );
        return $this->view->render('invoice_vat.html');
    }
    
    
    public function toVNDText($amount) {
        $Text=array("không", "một", "hai", "ba", "bốn", "năm", "sáu", "bảy", "tám", "chín");
        $TextLuythua =array("","nghìn", "triệu", "tỷ", "ngàn tỷ", "triệu tỷ", "tỷ tỷ");
        $textnumber = "";
        $length = strlen($amount);
       
        $unread = array();
        for ($i = 0; $i < $length; $i++) {
            $unread[$i] = 0;
        }
        
         
        for ($i = 0; $i < $length; $i++) {
            $so = substr($amount, $length - $i - 1 , 1);
             
            if ( ($so == 0) && ($i % 3 == 0) && ($unread[$i] == 0)){
                for ($j = $i+1 ; $j < $length ; $j ++)
                {
                    $so1 = substr($amount,$length - $j -1, 1);
                    if ($so1 != 0)
                    break;
                }

                if (intval(($j - $i )/3) > 0){
                    for ($k = $i ; $k <intval(($j-$i)/3)*3 + $i; $k++)
                    $unread[$k] = 1;
                }
            }
        }
         
        for ($i = 0; $i < $length; $i++)
        {
            $so = substr($amount,$length - $i -1, 1);

            if ($unread[$i] ==1 ) {
                continue;
            }

            if ( ($i% 3 == 0) && ($i > 0))
            $textnumber = $Text[$so]. ' ' . $TextLuythua[$i/3] ." ". $textnumber;
             
            if ($i % 3 == 2 )
            $textnumber = $Text[$so]. ' ' . 'trăm ' . $textnumber;
             
            if ($i % 3 == 1)
            $textnumber = $Text[$so]. ' ' . 'mươi ' . $textnumber;

            if ($i == 0) {
                $textnumber = $textnumber . $Text[$so];
            }

        }
         

        $textnumber = str_replace("không mươi", "lẻ", $textnumber);
        $textnumber = str_replace("lẻ không", "", $textnumber);
        $textnumber = str_replace("mươi không", "mươi", $textnumber);
        $textnumber = str_replace("một mươi", "mười", $textnumber);
        $textnumber = str_replace("mươi năm", "mươi lăm", $textnumber);
        $textnumber = str_replace("mươi một", "mươi mốt", $textnumber);
        $textnumber = str_replace("mười năm", "mười lăm", $textnumber);

        return ucfirst($textnumber . " đồng");
    }
}